package List$Stack$queue;
import common.ListNode;

/**
 * 反转链表问题
 */
public class ReverseLinkedList {
    public ListNode reverseList(ListNode head) {
        // 注意题目隐藏信息，最后一个节点的next指向null
        ListNode last = null;
        while (head != null){
            ListNode next = head.next;// 设置中间变量保存下一个节点信息
            head.next = last; // 反转当前节点
            last = head; // 更新上一个节点
            head = next; // 更新当前head节点
        }
        return last; // while循环执行完成后，last指向就是原链表的最后一个节点
    }
}
